<?php

namespace App\Http\Requests\Manage\Activity;

use Illuminate\Foundation\Http\FormRequest;

class SaveRequest extends FormRequest
{

    /**
     * 表示验证器是否应在第一个规则失败时停止
     *
     * @var bool
     */
    protected $stopOnFirstFailure = true;

    /**
     * Determine if the user is authorized to make this request.
     */
    public function authorize(): bool
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
     */
    public function rules(): array
    {
        return [
            'title'                              => 'required|string|max:50', //活动标题
            'receive_date_start'                 => 'required|date', //领取时间-开始
            'receive_date_end'                   => 'required|date', //领取时间-结束
            'location'                           => 'required|string|max:255', //活动地点
            'desc'                               => 'required', //活动描述，富文本
            'pic'                                => 'required', //活动预览图
            'restaurant_apply_desc'              => 'required', //餐厅申请描述
            'coupon_name'                        => 'required|max:64', //优惠券名称
            'coupon_amount'                      => 'required|integer', //优惠券金额
            'coupon_daily_receive_num'           => 'required|integer|min:1', //发券张数/每日
            'stock_ids'                          => 'required', //券批次ids，英文逗号分割
            'status'                             => 'required|integer', //活动状态：1.草稿；2.上线；
            'success_tip'                        => 'string', //领取成功提示
            'failed_tip'                         => 'string', //领取失败提示
            'assist_failed_tip'                  => 'string', //协助领取失败提示
            'assist_success_tip'                 => 'string', //协助领取成功提示
            'wx_cert_special_people_code'        => 'required|string', //微信特殊人群代码
            'assist_wx_cert_special_people_code' => 'required|string', //协助者特殊人群类型
            'assist_institution_id'              => 'required|int', //协助者的机构标识
        ];
    }

    /**
     * 获取验证错误的自定义属性
     *
     * @return string[]
     */
    public function attributes()
    {
        return [
            'title'                    => '活动标题', //
            'receive_date_start'       => '领取时间-开始', //领取时间-开始
            'receive_date_end'         => '领取时间-结束', //领取时间-结束
            'location'                 => '活动地点', //活动地点
            'desc'                     => '活动描述', //活动描述，富文本
            'pic'                      => '活动预览图', //活动预览图
            'restaurant_apply_desc'    => '餐厅申请描述', //餐厅申请描述
            'coupon_name'              => '优惠券名称', //优惠券名称
            'coupon_amount'            => '优惠券金额', //优惠券金额，单位分
            'coupon_daily_receive_num' => '发券张数/每日', //发券张数/每日
            'stock_ids'                => '券批次ids', //券批次ids，英文逗号分割
            'status'                   => '活动状态', //活动状态：1.草稿；2.上线；
        ];
    }

    //    /**
    //     * 获取已定义验证规则的错误消息
    //     *
    //     * @return string[]
    //     */
    //    public function messages()
    //    {
    //        return [
    //            'title'                    => '活动标题', //
    //            'receive_date_start'       => '领取时间-开始', //领取时间-开始
    //            'receive_date_end'         => '领取时间-结束', //领取时间-结束
    //            'location'                 => '活动地点', //活动地点
    //            'desc'                     => '活动描述', //活动描述，富文本
    //            'pic'                      => '活动预览图', //活动预览图
    //            'restaurant_apply_desc'    => '餐厅申请描述', //餐厅申请描述
    //            'coupon_name'              => '优惠券名称', //优惠券名称
    //            'coupon_amount'            => '优惠券金额', //优惠券金额，单位分
    //            'coupon_daily_receive_num' => '发券张数/每日', //发券张数/每日
    //            'stock_ids'                => '券批次ids', //券批次ids，英文逗号分割
    //            'status'                   => '活动状态', //活动状态：1.草稿；2.上线；
    //        ];
    //    }
}
